import router from './router';
import {
  getUserInfo
} from '@/api/login'
router.beforeEach((to, from, next) => {
  const token = localStorage.getItem('user_token');
  // 如果本地储存的token为空，那么用户没有登录过
  if (!token) {
    // 当用户没有登录过，不能访问除登录页面之外的其他路由
    if (to.path !== '/login') {
      next({
        path: '/login'
      })
    } else {
      next()
    }
  }
  // 如果本地查询到token
  else {
    if (to.path === '/login') {
      next();
    } else {
      const userInfo = localStorage.getItem('user_Info');
      if (userInfo) {
        next();
      } else {
        // 查找不到用户信息 ，那就通过token查询用户信息
        getUserInfo(token).then(res => {
          if (res.data.flag) {
            localStorage.setItem('user_Info', JSON.stringify(res.data.data))
            next()
          } else {
            next({
              path: '/login'
            })
          }
        })
      }
    }
  }
})